package com.xpffly.design.command;

import com.xpffly.design.command.service.Command;
import com.xpffly.design.command.service.Invoker;
import com.xpffly.design.command.service.impl.AddRequirementCommand;
import com.xpffly.design.command.service.impl.DeletePageCommand;

/**
 * @Author: xpengfei
 * @Date: 2021/4/6 22:10
 * @Description： 命令模式场景类
 */
public class Scene {

    public static void main(String[] args) {
        // 定义接头人：即是负责传达指令的人
        Invoker xiaoBao = new Invoker();
        // 客户新增一项需求
        System.out.println("-----------客户新增一项需求-------------");
        Command command = new AddRequirementCommand();
        // 接头人收到指令
        xiaoBao.setCommand(command);
        // 接头人执行指令
        xiaoBao.action();

        System.out.println("-------------客户要求删除一个页面------------");
        Command command1 = new DeletePageCommand();
        xiaoBao.setCommand(command1);
        xiaoBao.action();
    }
}
